Methods and systems for capturing an image of a moving object

ABSTRACT

Methods and systems for capturing an image of a moving subject employ a camera image sensor that captures a blurred image of a moving subject. In-capture positions of the moving object are also determined using a high frame rate camera or other motion sensing device. The PSF for controlling modulation of the light hitting the camera image is successively updated by selecting, from among a plurality of pre-computed invertible PSFs, a pre-computed invertible PSFs for each estimated motion of the moving object. Light hitting the camera image sensor is modulated in capture phase according to one or more of the updated pre-computed invertible PSFs such that the captured blurred image is invertible. The resulting invertible blurred image can be de-blurred using the selected known PSFs to provide a substantially sharp image.

STATEMENT OF GOVERNMENT RIGHTS

The invention disclosed in this application was made with Governmentsupport under Contract Number W911NF-10-C-0022 awarded by theIntelligence Advanced Research Projects Activity. The Government hascertain rights in the invention.

TECHNICAL FIELD

Embodiments generally relate to methods and systems for capturing andprocessing images. Embodiments also relate to methods and systems fordeblurring images. Embodiments additionally relate to software orhardware modules for implementing such methods.

BACKGROUND OF THE INVENTION

Acquiring sharply-focused images of moving people or objects is afundamental and challenging problem in several applications. In manyapplications, but particularly in iris and iris image capture,subject/target motion is a complicating factor. In moderate lightingenvironments (e.g. indoors), the long exposure times required togenerate a clear image limits the range of subject velocities that canbe tolerated. For higher subject velocities, motion blur in the capturedimage may prevent exploitation, e.g. iris recognition.

For applications such as iris recognition, wherein fine scale featuresare essential to proper classification, the use of a traditional shutterimposes some fundamental limits on the extent of motion blur that can betolerated. Motion blur, as through a traditional shutter, is equivalentto convolution of a sharply-focused image with a box filter.Motion-blurred images of this type lack information regarding the objectat a number of spatial frequencies. This lack of information isirreversible and no post processing can recover it from the image.Methods that attempt to deblur the image will severely amplify sensornoise, hallucinate content, or both. Though it may be useful inimproving subjective image quality, hallucinating image content iscounter-productive for forensic applications, and amplifying noisecomplicates iris matching.

To avoid this loss of information during image capture, some prior artapproaches have advocated the use of a fluttering shutter anddemonstrated the ability to recover high-quality images despite blurfrom moving objects. During exposure, the camera's shutter fluttersbetween open and closed while exposure is accumulated. This produces animage with coded blur which, unlike traditional blur, conveysinformation about the subject at all spatial frequencies. Given asuitably designed processing method that is based on the shutter'sfluttering pattern, deblurring recovers an image with low levels ofnoise while avoiding reconstruction artifacts.

Researchers have developed methods to mitigate motion blur post-capture,including the flutter shutter technique. Note that a non-limitingexample of a flutter shutter camera and flutter shutter technology ingeneral is disclosed in U.S. Patent Application Publication No.US2007/0258707A1, entitled “Method and Apparatus for DeblurringImages,”which published to Ramesh Raskar on Nov. 8, 2007 and isincorporated herein b reference. Another non-limiting example of aflutter shutter camera and flutter shutter technology is disclosed inU.S. Patent Application Publication No. US2007/0258706A1, entitled“Method for Deblurring Images Using Optimized Temporal Coding Patterns,”which published to Ramesh Raskar, et al on Nov. 8, 2007, and isincorporated herein by reference.

There is a need to provide improved systems and methods that are capableof acquiring sharp images of subjects despite subject motion.

BRIEF SUMMARY

The following summary is provided to facilitate an understanding of someof the innovative features unique to the embodiments disclosed and isnot intended to be a full description. A full appreciation of thevarious aspects of the embodiments can be gained by taking the entirespecification, claims, drawings, and abstract as a whole.

It is, therefore, one aspect of the present invention to provide formethods and systems for capturing images with invertible motion blur.

It is another aspect of the present invention to provide methods andsystems for real-time shutter control for invertible motion blur.

Aspects and other objectives and advantages can now be achieved asdescribed herein. According to one aspect, a method for capturing animage of a moving subject is provided. The method can comprise providinga plurality of pre-computed invertible PSFs searchable at rates ofin-capture motion; capturing, using a camera image sensor, a blurredimage of a moving subject; sensing a rate of in-capture motion of thesubject; estimating the rate of in-capture motion of the subject fromthe sensing, successively updating in-capture positions of the movingsubject based on the estimation of in-capture motion; selecting, fromamong the plurality of pre-computed invertible PSFs, a pre-computedinvertible PSFs for each estimated position of the moving object; andmodulating light integrated by the camera image sensor according to oneor more of the updated pre-computed invertible PSFs such that thecaptured blurred image is invertible. The method can further comprisede-blurring the invertible blurred captured image to provide a sharpimage. The method can yet further comprise successively updating anestimated PSF for controlling modulation of the camera image sensor tocorrespond to each selected pre-computed invertible PSF.

According to another aspect, a system for capturing an image of a movingsubject is provided. The system can comprise a processor; a data buscoupled to the processor; and a computer-usable medium embodyingcomputer code, the computer-usable medium being coupled to the data bus,the computer program code comprising instructions executable by theprocessor and configured for: providing a plurality of pre-computedinvertible PSFs searchable at rates of in-capture motion; capturing,using a camera image sensor, a blurred image of a moving subject;sensing a rate of in-capture motion of the subject; estimating the rateof in-capture motion of the subject from the sensing, successivelyupdating in-capture positions of the moving subject based on theestimation of in-capture motion; selecting, from among the plurality ofpre-computed invertible PSFs, a pre-computed invertible PSFs for eachupdated position of the moving object; and modulating light hitting thecamera image sensor according to one or more of the updated pre-computedinvertible PSFs such that the captured blurred image is invertible. Theinstructions executable by the processor can be further configured forsuccessively updating an estimated PSF for controlling modulation of thecamera image sensor to correspond to each selected pre-computedinvertible PSF.

According to yet another aspect, a computer-usable medium for capturingan image of a moving subject is provided. The computer-usable mediumembodies computer program code. The computer program code can comprisecomputer executable instructions configured for: providing a pluralityof pre-computed invertible PSFs searchable at rates of in-capturemotion; capturing, using a camera image sensor, a blurred image of amoving subject; sensing a rate of in-capture motion of the subject;estimating the rate of in-capture motion of the subject from thesensing, successively updating in-capture positions of the movingsubject based on the estimation of in-capture motion; selecting, fromamong the plurality of pre-computed invertible PSFs, a pre-computedinvertible PSFs for each updated position of the moving object; andmodulating light hitting the camera image sensor according to one ormore of the updated pre-computed invertible PSFs such that the capturedblurred image is invertible. The instructions can be further configuredto successively updating an estimated PSF for controlling modulation ofthe camera image sensor to correspond to each selected pre-computedinvertible PSF.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, in which like reference numerals refer toidentical or functionally-similar elements throughout the separate viewsand which are incorporated in and form a part of the specification,further illustrate the embodiments and, together with the detaileddescription, serve to explain the embodiments disclosed herein.

FIG. 1 illustrates a schematic view of system for capturing an image ofa moving subject according to one implementation;

FIG. 2 illustrates a schematic view of a software system including anoperating system, application software, and a user interface forcarrying out the present invention;

FIG. 3 illustrates a graphical representation of a network ofdata-processing systems in which aspects of the present invention may beimplemented;

FIG. 4 illustrates a high-level flow chart of operations depictinglogical operational steps of a method for capturing an image of a movingsubject according to one embodiment; and

FIGS. 5-7 illustrate an example implementation of the method of FIG. 4in the system of FIG. 1.

DETAILED DESCRIPTION

The particular values and configurations discussed in these non-limitingexamples can be varied and are cited merely to illustrate at least oneembodiment and are not intended to limit the scope thereof.

FIGS. 1-3 are provided as exemplary diagrams of data-processingenvironments in which embodiments of the present invention may beimplemented. It should be appreciated that FIGS. 1-3 are only exemplaryand are not intended to assert or imply any limitation with regard tothe environments in which aspects or embodiments of the presentinvention may be implemented. Many modifications to the depictedenvironments may be made without departing from the spirit and scope ofthe present invention.

As depicted in FIG. 1, the present invention may be embodied in thecontext of a data-processing system 100 comprising, for example, acomputer system 111, camera 108 and motion sensing device 109. Computersystem 111 has a central processor 101, a main memory 102, aninput/output controller 103, a keyboard 104, a pointing device 105(e.g., mouse, track ball, pen device, or the like), a display device106, and a mass storage component 107 (e.g., hard disk). Camera 108 maybe employed to communicate with computer system 111. Camera 108 can beimplemented as, for example, a flutter shutter camera, which may beemployed in the context of a biometric authentication system such as,for example, an iris and/or facial biometric recognition system ordevice. A flutter shutter camera can be configured as a camera capableof capturing moving objects at an exposure time of, for example, over 50milliseconds, like high speed motion cameras. Using a coded exposuresequence, the flutter shutter camera can recover, for example, text froma speeding car and sharpen images. Motion sensing device 109 can alsocommunicate with computer system 111. Motion sensing device 109, whichcan be for example a High Frame Rate Camera, is configured to captureimages of the moving object for estimating the rate/positions of motionof the moving object. Motion sensing devices other than a high framerate camera may be employed. For example, a Light Detection and Ranging(LIDAR) system can be utilized. The camera 108 and/or motion sensingdevice 109 can be located locally either proximate to or integrated withthe computer system 111. Alternatively, the camera 108 and/or motionsensing device 109 can be located remotely from the computer system 111.As illustrated, the various components of the data-processing system 100communicate through a system bus 110 or similar architecture.

FIG. 2 illustrates a computer software system 150 for directing theoperation of the data-processing system 100 depicted in FIG. 1. Softwaresystem 150, which is stored in system memory 102 and on disk memory 107,can include a kernel or operating system 151 and a shell or interface153. One or more application programs, such as application software 152,may be “loaded” (i.e., transferred from storage 107 into memory 102) forexecution by the data-processing system 100. The data-processing system100 receives user commands and data through user interface 153; theseinputs may then be acted upon by the data-processing system 100 inaccordance with instructions from operating module 151 and/orapplication module 152.

The interface 153, which is preferably a graphical user interface (GUI),can also serve to display results, whereupon the user may supplyadditional inputs or terminate a given session. In one possibleembodiment, operating system 151 and interface 153 can be implemented inthe context of a “Windows” system. It can be appreciated, of course,that other types of systems are possible. For example, rather than atraditional “Windows” system, other operating systems such as, forexample, Linux may also be employed with respect to the operating system151 and interface 153. Application module 152, on the other hand, caninclude instructions such as the various operations described hereinwith respect to the various components and modules described herein suchas, for example, the method 400 depicted in FIG. 4.

FIG. 3 illustrates a graphical representation of a network of dataprocessing systems in which aspects of the present invention may beimplemented. The network data processing system can be provided as anetwork of computers in which embodiments of the present invention maybe implemented. The network data processing system contains network 302,which can be utilized as a medium for providing communications linksbetween various devices and computers connected together within thenetwork data processing system. Network 302 may include connections suchas wired, wireless communication links, fiber optic cables, USB cables,Ethernet connections, and so forth.

In the depicted example, server 304 and server 306 connect to network302 along with storage unit 308. In addition, clients 310, 312, and 314connect to network 302. These clients 310, 312, and 314 may be, forexample, personal computers or network computers. Data-processing system100 depicted in FIG. 1 can be, for example, a client such as client 310,312, and/or 314. Alternatively, data-processing system 100 can beimplemented as a server such as servers 304 and/or 306, depending upondesign considerations.

In the depicted example, server 304 provides data such as boot files,operating system images, and applications to clients 310, 312, and 314.Clients 310, 312, and 314 are clients to server 304 in this example. Thenetwork data processing system may include additional servers, clients,and other devices not shown. Specifically, clients may connect to anymember of a network of servers which provide equivalent content.

In some embodiments, the network data processing system may be theInternet with network 302 representing a worldwide collection ofnetworks and gateways that use the Transmission ControlProtocol/Internet Protocol (TCP/IP) suite of protocols to communicatewith one another. At the heart of the Internet is a backbone ofhigh-speed data communication lines between major nodes or hostcomputers consisting of thousands of commercial, government,educational, and other computer systems that route data and messages. Ofcourse, the network data processing system may also be implemented as anumber of different types of networks such as, for example, a secureintranet, a local area network (LAN), or a wide area network (WAN). FIG.1 is intended as an example and not as an architectural limitation fordifferent embodiments of the present invention.

The following description is presented with respect to embodiments ofthe present invention, which can be embodied in the context of a dataprocessing system such as system 100, computer software system 150,network data-processing system, and network 302 depicted in FIGS. 1-3.The present invention, however, is not limited to any particularapplication or any particular environment. Instead, those skilled in theart will find that the system and methods of the present invention maybe advantageously applied to a variety of system and applicationsoftware including database management systems, word processors, and thelike. Moreover, the present invention may be embodied on a variety ofdifferent platforms including Macintosh, UNIX, LINUX, and the like.Therefore, the description of the exemplary embodiments, which follows,is for purposes of illustration and not considered a limitation.

At a high level, the system retains a set of (pre-computed) point spreadfunctions (PSFs) that are known to be invertible. During capture of animage, given in-capture motion estimates, the system modulates lightintegrated by the sensor (e.g., by opening and closing the shutter) inorder to produce *invertible* motion blur in the captured image.Post-capture, this image is processed in order to estimate the sharptexture.

A method for capturing a moving object according to one embodiment willnow be described in more detail. The method 400, which is outlined inthe flow chart of FIG. 4, may be implemented for example in the systemof FIG. 1. Method 400 of FIG. 4 will be described with reference toFIGS. 5-7, which illustrate operation of the system of FIG. 1 inpre-capture mode, capture mode, and post-capture mode, respectively.

As indicated in the method of 400 of FIG. 4, a number of point spreadfunctions (PSFs) known to be invertible are initially computed inpre-capture phase (401). Computer system 111 achieves this inpre-capture mode by shutter generation, i.e. an algorithm that computesPSFs which satisfy conditions on blur invertibility 158 (see FIG. 5).The pre-computed PSFs are arranged or organized (e.g. using a prefixtree) in such a way as to allow for a search at the rate of thein-capture motion estimation (402). The arranged pre-computed PSFs arestored as data 153 in computer system 111 (FIG. 5).

A blurred image of the moving subject is captured (403). As shown inFIG. 6, this is achieved in system 100 by a flutter shutter camera 108capturing the blurred image. The rate of in-capture motion is determined(404). In system 100, the high frame rate camera 109 captures images ofthe moving subject and a real-time estimation module 155 of the softwareperforms in-capture motion estimations based on the images captured bythe high frame rate camera 109. The position of the moving subject issuccessively updated based on the in-capture motion estimations (405).During capture, the pre-computed invertible PSFs are utilized to controlmodulation of the camera image sensor, and the estimated PSF in theblurred image is successively updated according to the updated movingobject position and the shutter state during the capture time (406).System 100 achieves this by feeding the calculated moving objectpositions to the shutter control software module 154 which uses thereceived calculated moving object positions to select and retrieve thecorresponding pre-computed PSFs from storage (FIG. 6).

Light integrated by the camera image sensor is modulated according tothe successively updated pre-computed PSFs (407). In system 100, duringexposure of the moving subject by the flutter shutter camera, eachposition update (from the in-capture motion estimation) is taken, alongwith the current PSF and the collection of invertible PSFs, in order todecide whether the shutter should be opened or closed, whether the lightshould be integrated by the sensor, or whether the opacity of an opticalelement (an LCD panel, for example) should be modulated. Exposureterminates when the shutter and LCD panel have been open long enough toresult in the required exposure (FIG. 6)

As indicated in FIG. 4, the captured invertible blurred image isdeblurred utilizing the PSF estimated determined during capture (408).In system 100, post capture, the flutter camera 108 sends the fluttershutter image to a de-blurring software module 156 which deblurs theimage using the corresponding known PSF as estimated during exposure andsupplied by the shutter control module 154, as shown in FIG. 7.

After the image is de-blurred post capture using the known PSFs asestimated during exposure, the de-blurred image is passed along forsubsequent analysis (e.g. iris matching, barcode decoding).

Hitherto now, one of the shortcomings of the flutter shutter approachwas that, in order to ensure that motion blur was invertible (that is,ensure that the underlying sharp image can be accurately reconstructed),the subject velocity had to be known a priori. In addition, variouslimiting assumptions had to be made that restricted the classes ofsubject motion that can be tolerated, e.g. linear and constant velocitymotion. Method 400 and system 100 capture images with invertible motionblur for subjects with more general motion profiles, and in cases wherethe motion cannot be known/predicted a priori.

Rather than attempting to prevent motion blur using specializedhardware, systems and methods of the disclosed embodiments capturemotion-blurred images, but does so in such a way as to ensure that themotion blur is invertible.

Note that the method 400 of FIG. 4, and other methodologies disclosedherein, can be implemented in the context of a computer-useable mediumthat contains a program product. Programs defining functions on thepresent invention can be delivered to a data storage system or acomputer system via a variety of signal-bearing media which include,without limitation, non-writable storage media (e.g., CD-ROM), writablestorage media (e.g., hard disk drive, read/write CD ROM, optical media),system memory such as, but not limited to, Random Access Memory (RAM),and communication media such as computer and telephone networksincluding Ethernet, the Internet, wireless networks, and like networksystems.

It should be understood, therefore, that such signal-bearing media whencarrying or encoding computer readable instructions that direct methodfunctions in the present invention, represent alternative embodiments ofthe present invention. Further, it is understood that the presentinvention may be implemented by a system having means in the form ofhardware, software, or a combination of software and hardware asdescribed herein or their equivalent. Thus, the method 400, for example,described herein can be deployed as process software in the context of acomputer system or data-processing system as that depicted in FIGS. 1-3.

While the present invention has been particularly shown and describedwith reference to a preferred embodiment, it will be understood by thoseskilled in the art that various changes in form and detail may be madetherein without departing from the spirit and scope of the invention.Furthermore, as used in the specification and the appended claims, theterm “computer” or “system” or “computer system” or “computing device”or “data-processing system” includes any data-processing apparatusincluding, but not limited to, personal computers, servers,workstations, network computers, main frame computers, routers,switches, Personal Digital Assistants (PDA's), telephones, and any othersystem capable of processing, transmitting, receiving, capturing and/orstoring data.

It will be appreciated that variations of the above-disclosed and otherfeatures and functions, or alternatives thereof, may be desirablycombined into many other different systems or applications. Also, thatvarious presently unforeseen or unanticipated alternatives,modifications, variations or improvements therein may be subsequentlymade by those skilled in the art which are also intended to beencompassed by the following claims.

1. A method for capturing an image of a moving subject, the methodcomprising: providing a plurality of pre-computed invertible PSFs (pointspread function) searchable at rates of in-capture motion; capturing,using a camera image sensor, a blurred image of a moving subject;sensing a rate of in-capture motion of said subject; estimating the rateof in-capture motion of said subject from said sensing; successivelyupdating in-capture positions of the moving subject in real-time basedon said estimation of in-capture motion; selecting, from among saidplurality of pre-computed invertible PSFs, a pre-computed invertible PSFfor each motion estimate of the moving object; and modulating lightintegrated by said camera image sensor according to at least one of saidupdated pre-computed invertible PSFs such that said captured blurredimage is invertible.
 2. The method of claim 1, further comprisingsuccessively updating an estimated PSF in the blurred image, forcontrolling modulation of the camera image sensor, to correspond to eachselected pre-computed invertible PSF.
 3. The method of claim 1, whereinsaid moving subject corresponds to one among a plurality of movingobjects.
 4. The method of claim 1, further comprising de-blurring saidinvertible blurred captured image to provide a substantially sharpimage.
 5. The method of claim 1, wherein selecting, from among saidplurality of pre-computed invertible PSFs, a pre-computed invertiblePSFs for each updated position of the moving object comprises:searching, during capture, each pre-computed PSF among said plurality ofpre-computed invertible PSFs, utilizing each updated position; andselecting each searched pre-computed PSF.
 6. The method of claim 5,wherein providing a plurality of pre-computed invertible PSFs searchableat rates of in-capture motion comprises: prior to capturing said blurredimage: computing a plurality of point spread functions (PSFs) known tobe invertible; and arranging said plurality of computed pre-invertiblePSFs such that said PSFs are searchable at the estimated rate ofin-capture motion of said subject.
 7. The method of claim 6, whereinarranging said plurality of computed pre-invertible PSFs such that saidPSFs are searchable at the estimated rate of in-capture motion of saidsubject comprises arranging said plurality of pre-determined invertiblePSFs in a pre-fix tree configuration.
 8. A system for capturing an imageof a moving subject, said system comprising: a processor; a data buscoupled to the processor; and a computer-usable medium embodyingcomputer code, the computer-usable medium being coupled to the data bus,the computer program code comprising instructions executable by theprocessor and configured for: providing a plurality of pre-computedinvertible PSFs (point spread function) searchable at rates ofin-capture motion; capturing, using a camera image sensor, a blurredimage of a moving subject; sensing, using a motion sensing device, arate of in-capture motion of said subject; estimating the rate ofin-capture motion of said subject from said sensing; successivelyupdating in-capture positions of the moving subject in real-time basedon said estimation of in-capture motion; selecting, from among saidplurality of pre-computed invertible PSFs, a pre-computed invertiblePSFs for each motion estimate of the moving object; and modulating lighthitting said camera image sensor according to at least one pre-computedinvertible PSF such that said captured blurred image is invertible. 9.The system of claim 8, wherein said instructions executable by theprocessor are further configured for successively updating an estimatedPSF in the blurred image, for controlling modulation of the camera imagesensor, to correspond to each selected pre-computed invertible PSF. 10.The system of claim 8, wherein said moving subject corresponds to oneamong a plurality of moving objects.
 11. The system of claim 8, whereinsaid instructions executable by the processor for selecting, from amongsaid plurality of pre-computed invertible PSFs, a pre-computedinvertible PSFs for each updated position of the moving object compriseinstructions executable by the processor for: searching, during capture,each pre-computed PSF among said plurality of pre-computed invertiblePSFs, utilizing each updated position; and selecting each searchedpre-computed PSF.
 12. The system of claim 8, wherein said instructionsexecutable by the processor for providing a plurality of pre-computedinvertible PSFs searchable at rates of in-capture motion comprise: priorto capturing said blurred image: computing a plurality of point spreadfunctions (PSFs) known to be invertible; and arranging said plurality ofcomputed pre-invertible PSFs such that said PSFs are searchable at theestimated rate of in-capture motion of said subject.
 13. The system ofclaim 8, wherein said instructions executable by the processor forarranging said plurality of computed pre-invertible PSFs such that saidPSFs are searchable at the estimated rate of in-capture motion of saidsubject comprise instructions for arranging said plurality ofpre-determined invertible PSFs in a pre-fix tree configuration.
 14. Thesystem of claim 8, wherein said camera image sensor comprises a fluttershutter camera and/or wherein said motion sensing device comprises ahigh frame rate camera.
 15. A non-transitory computer-usable medium forcapturing an image of a moving subject, said computer-usable mediumembodying computer program code, said computer program code comprisingcomputer executable instructions configured for: providing a pluralityof pre-computed invertible PSFs (point spread function) searchable atrates of in-capture motion; capturing, using a camera image sensor, ablurred image of a moving subject; sensing a rate of in-capture motionof said subject; estimating the rate of in-capture motion of saidsubject from said sensing; successively updating in-capture positions ofthe moving subject in real-time based on said estimation of in-capturemotion; selecting, from among said plurality of pre-computed invertiblePSFs, a pre-computed invertible PSFs for each estimate motion of themoving object; and modulating light hitting said camera image sensoraccording to at least one updated pre-computed invertible PSFs such thatsaid captured blurred image is invertible.
 16. The computer-usablemedium of claim 15, wherein said instructions executable by theprocessor are further configured for successively updating an estimatedPSF in the blurred image, for controlling modulation of the camera imagesensor, to correspond to each selected pre-computed invertible PSF. 17.The computer-usable medium of claim 15, wherein said moving subjectcorresponds to one among a plurality of moving objects.
 18. Thecomputer-usable medium of claim 15, wherein said instructions executableby the processor are further configured for de-blurring said invertibleblurred captured image to provide a substantially sharp image.
 19. Thecomputer-usable medium of claim 15, wherein said instructions executableby the processor for selecting, from among said plurality ofpre-computed invertible PSFs, a pre-computed invertible PSFs for eachupdated position of the moving object comprise instructions for:searching, during capture, each pre-computed PSF among said plurality ofpre-computed invertible PSFs, utilizing each updated position; andselecting each searched pre-computed PSF.
 20. The computer-usable mediumof claim 15, wherein said instructions executable by the processor forproviding a plurality of pre-computed invertible PSFs searchable atrates of in-capture motion comprise: prior to capturing said blurredimage: computing a plurality of point spread functions (PSFs) known tobe invertible; and arranging said plurality of computed pre-invertiblePSFs such that said PSFs are searchable at the estimated rate ofin-capture motion of said subject.